package com.crm.jpaandthymeleaf.entity;

import javax.persistence.*;
import java.sql.Timestamp;
import java.util.Objects;

/**
 * @author 周敬
 * @version 1.0
 * @packageName com.crm.jpaandthymeleaf.entity
 * @fileName CstLost
 * @createTime 2021/12/15-20:19-星期三
 * @lastModify 2021/12/15-20:19-星期三
 */
@Entity
@Table(name = "cst_lost", schema = "crm", catalog = "")
public class CstLost {
    private Long lstId;
    private String lstCustNo;
    private String lstCustName;
    private Long lstCustManagerId;
    private String lstCustManagerName;
    private Timestamp lstLastOrderDate;
    private Timestamp lstLostDate;
    private String lstDelay;
    private String lstReason;
    private String lstStatus;

    @Id
    @Column(name = "lst_id")
    public Long getLstId() {
        return lstId;
    }

    public void setLstId(Long lstId) {
        this.lstId = lstId;
    }

    @Basic
    @Column(name = "lst_cust_no")
    public String getLstCustNo() {
        return lstCustNo;
    }

    public void setLstCustNo(String lstCustNo) {
        this.lstCustNo = lstCustNo;
    }

    @Basic
    @Column(name = "lst_cust_name")
    public String getLstCustName() {
        return lstCustName;
    }

    public void setLstCustName(String lstCustName) {
        this.lstCustName = lstCustName;
    }

    @Basic
    @Column(name = "lst_cust_manager_id")
    public Long getLstCustManagerId() {
        return lstCustManagerId;
    }

    public void setLstCustManagerId(Long lstCustManagerId) {
        this.lstCustManagerId = lstCustManagerId;
    }

    @Basic
    @Column(name = "lst_cust_manager_name")
    public String getLstCustManagerName() {
        return lstCustManagerName;
    }

    public void setLstCustManagerName(String lstCustManagerName) {
        this.lstCustManagerName = lstCustManagerName;
    }

    @Basic
    @Column(name = "lst_last_order_date")
    public Timestamp getLstLastOrderDate() {
        return lstLastOrderDate;
    }

    public void setLstLastOrderDate(Timestamp lstLastOrderDate) {
        this.lstLastOrderDate = lstLastOrderDate;
    }

    @Basic
    @Column(name = "lst_lost_date")
    public Timestamp getLstLostDate() {
        return lstLostDate;
    }

    public void setLstLostDate(Timestamp lstLostDate) {
        this.lstLostDate = lstLostDate;
    }

    @Basic
    @Column(name = "lst_delay")
    public String getLstDelay() {
        return lstDelay;
    }

    public void setLstDelay(String lstDelay) {
        this.lstDelay = lstDelay;
    }

    @Basic
    @Column(name = "lst_reason")
    public String getLstReason() {
        return lstReason;
    }

    public void setLstReason(String lstReason) {
        this.lstReason = lstReason;
    }

    @Basic
    @Column(name = "lst_status")
    public String getLstStatus() {
        return lstStatus;
    }

    public void setLstStatus(String lstStatus) {
        this.lstStatus = lstStatus;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        CstLost cstLost = (CstLost) o;
        return Objects.equals(lstId, cstLost.lstId) && Objects.equals(lstCustNo, cstLost.lstCustNo) && Objects.equals(lstCustName, cstLost.lstCustName) && Objects.equals(lstCustManagerId, cstLost.lstCustManagerId) && Objects.equals(lstCustManagerName, cstLost.lstCustManagerName) && Objects.equals(lstLastOrderDate, cstLost.lstLastOrderDate) && Objects.equals(lstLostDate, cstLost.lstLostDate) && Objects.equals(lstDelay, cstLost.lstDelay) && Objects.equals(lstReason, cstLost.lstReason) && Objects.equals(lstStatus, cstLost.lstStatus);
    }

    @Override
    public int hashCode() {
        return Objects.hash(lstId, lstCustNo, lstCustName, lstCustManagerId, lstCustManagerName, lstLastOrderDate, lstLostDate, lstDelay, lstReason, lstStatus);
    }
}
